﻿using System;
using Platformer_Example.Content.Images.Player;
using Platformer_Example.Controller.Input;
using Transformable_Engine_v2.Engine;
using Transformable_Engine_v2.Engine.Animation.FrameAnimation;
using Transformable_Engine_v2.Engine.Transformable_Math.Geometry;

namespace Platformer_Example.Controller.Character.Player
{
    public partial class Player
    {
        static readonly TE_Vector2 _ladderClimbSpeed = new TE_Vector2(0, 5).ToGridbound();

        protected override void CreateLadderClimbStateObjects()
        {
            
        }

        protected override void InitializeLadderClimbState()
        {
            Character.AddAnimations(new FrameAnimation(new PlayerAnimations.Normal.LadderClimb()));
            Character.OriginAbsolute = new TE_Vector2(8, 32);
        }

        protected override void UpdateLadderClimbState(TimeSpan gameTime)
        {
        }

        protected override void EndLadderClimbState()
        {
            Character.ClearAnimation<FrameAnimation>();
        }

        public override TE_Vector2 LadderClimbSpeed
        {
            get { return _ladderClimbSpeed; }
        }

        protected override void OnKeyPressLadderClimb(InputState.Key key)
        {
        }

        protected override void OnKeyReleaseLadderClimb(InputState.Key key)
        {
        }
    }
}